package com.yc.springmvc;

import javax.servlet.Servlet;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.web.WebApplicationInitializer;
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
import org.springframework.web.servlet.DispatcherServlet;
import javax.servlet.ServletException;

import javax.servlet.ServletRegistration;

public class MyWebApplicationInitializer implements WebApplicationInitializer {
    @Override
    public void onStartup(javax.servlet.ServletContext servletContext) throws ServletException {
        System.out.println("---------------------------------");
        // 加载 Spring 配置
        AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
        context.register(MvcConfig.class);
//        AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(MvcConfig.class);
        // 注册转发器Servlet
        DispatcherServlet servlet = new DispatcherServlet(context);
//        Servlet servlet = new MyDispatcherServlet(context);
        ServletRegistration.Dynamic registration = servletContext.addServlet("app", servlet);
        // 设置服务器在启动时加载 DispatcherServlet
        registration.setLoadOnStartup(1);
        // 转发全部请求，必须配置响应地址为：/
        registration.addMapping("/");
    }
}
